x86/IO-APIC: don't create pIRQ mapping from masked RTE
authorJan Beulich <jbeulich@suse.com>
Tue, 25 Aug 2015 14:18:31 +0000 (16:18 +0200)
committerJan Beulich <jbeulich@suse.com>
Tue, 25 Aug 2015 14:18:31 +0000 (16:18 +0200)
commit669d4b85c433674ab3b52ef707af0d3a551c941f
tree518cbfdefcbc3eafaef07708d6ab53b12ff3599d
parent22c5675877c8209adcfdb6bceddb561320374529
x86/IO-APIC: don't create pIRQ mapping from masked RTE

While moving our XenoLinux patches to 4.2-rc I noticed bogus "already
mapped" messages resulting from Linux (legitimately) writing RTEs with
only the mask bit set. Clearly we shouldn't even attempt to create a
pIRQ <-> IRQ mapping from such RTEs.

In the course of this I also found that the respective message isn't
really useful without also printing the pre-existing mapping. And I
noticed that map_domain_pirq() allowed IRQ0 to get through, despite us
never allowing a domain to control that interrupt.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Release-acked-by: Wei Liu <wei.liu2@citrix.com>
xen/arch/x86/io_apic.c
xen/arch/x86/irq.c